package com.gitee.chili.leisure.domain;

import com.gitee.chili.leisure.base.GenerateId;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

/**
 * Setting
 *
 * @author week solider
 * @since 2020.09.02
 */
@Data
@Entity
@Table(name = "leisure_setting")
@EqualsAndHashCode(callSuper = true)
public class Setting extends GenerateId<Long> {


    // ===================== 以下都是选项 当为 1 时表示启用选项，当为 0 时表示禁用选项 ==================

    /**
     * 换三张(四川麻将)
     */
    @Column(name = "change_three")
    private Integer changeThree;

    /**
     * 将对
     */
    @Column(name = "eyes_pair")
    private Integer eyesPair;

    /**
     * 门清
     */
    @Column(name = "door_clear")
    private Integer doorClear;

    /**
     * 中张
     */
    @Column(name = "middle_sheet")
    private Integer middleSheet;

    /**
     * 天地胡
     */
    @Column(name = "world_win")
    private Integer worldWin;

    /**
     * 点杠花
     * (杠子由别人打出时) 如果杠开 结果是否算做点炮
     */
    @Column(name = "kong_flower")
    private Integer kongFlower;

    /**
     * 自摸加底
     */
    @Column(name = "increase_score")
    private Integer increaseScore;

    /**
     * 自摸加番
     */
    @Column(name = "increase_points")
    private Integer increasePoints;

    /**
     * 碰
     */
    @Column(name = "pong")
    private Integer pong;

    /**
     * 杠
     */
    @Column(name = "kong")
    private Integer kong;

    /**
     * 吃
     */
    @Column(name = "chow")
    private Integer chow;

    /**
     * 一条龙 类似于扑克牌的同花顺
     *
     * 玩家手持的牌相同花色 1~9 都只有一张就算做一条龙
     */
    @Column(name = "dragon")
    private Integer dragon;

    /**
     * 车子 类似于扑克牌的连对 (麻将中，相同花色才叫一对)
     *
     * 玩家手持的牌相同花色连着的3对
     */
    @Column(name = "vehicle")
    private Integer vehicle;


    // ===================== 以上都是选项 当为 1 时表示启用选项，当为 0 时表示禁用选项 ==================

    /**
     * 牌的张数
     */
    @Column(name = "cards_number")
    private Integer cardsNumber;

}
